﻿using System.ComponentModel.DataAnnotations;
using Tanmia.Basis.Core;

namespace Tanmia.Warehouse.Core
{
    /// <summary>
    /// أسماء الأسعار المستخدمة داخل البرنامج
    /// </summary>
    public class PriceName : BaseBusinessObject
    {
        private int priceNameID;
        private string name;

        /// <summary>
        /// رقم تعريف اسم السعر
        /// </summary>
        [Display(Name = "رقم نوع السعر: ", ShortName = "رقم نوع السعر", Order = 0, AutoGenerateField = true)]
        public virtual int PriceNameID
        {
            get { return priceNameID; }
            set { SetValue<int>("PriceNameID", ref priceNameID, value); }
        }

        /// <summary>
        /// اسم السعر
        /// </summary>
        [Display(Name = "اسم نوع السعر: ", ShortName = "اسم نوع السعر", Order = 1, AutoGenerateField = true)]
        [Required(AllowEmptyStrings = false, ErrorMessage = "يجب ادخال اسم الفرع قبل الإتمام.")]
        public virtual string Name
        {
            get { return name; }
            set { SetValue<string>("Name", ref name, value); }
        }

        public override bool IsEmpty
        {
            get { return PriceNameID == 0; }
        }

        public override bool Equals(object obj)
        {
            if (!base.Equals(obj)) return false;

            PriceName branch = obj as PriceName;

            if (!branch.PriceNameID.Equals(this.PriceNameID)) return false;

            return true;
        }
    }
}
